Comparing Clustering Algorithms
Following table will give a comparison (based on parameters, scalability and metric) of the clustering algorithms in scikit-learn.
Sr.No	Algorithm Name	Parameters	Scalability	Metric Used
1	K-Means	No. of clusters	Very large n_samples	The distance between points.
2	Affinity Propagation	Damping	It’s not scalable with n_samples	Graph Distance
3	Mean-Shift	Bandwidth	It’s not scalable with n_samples.	The distance between points.
4	Spectral Clustering	No.of clusters	Medium level of scalability with n_samples. Small level of scalability with n_clusters.	Graph Distance
5	Hierarchical Clustering	Distance threshold or No.of clusters	Large n_samples Large n_clusters	The distance between points.
6	DBSCAN	Size of neighborhood	Very large n_samples and medium n_clusters.	Nearest point distance
7	OPTICS	Minimum cluster membership	Very large n_samples and large n_clusters.	The distance between points.
8	BIRCH	Threshold, Branching factor	Large n_samples Large n_clusters	The Euclidean distance between points.